import sys

# internal
from coin.support.latency.latency_model import LatencyModel

# std

if len(sys.argv) != 2:
  print('provide argument e.g. 20190807-20190815')
  sys.exit(1)

model = LatencyModel()
model.train_for_dates(sys.argv[1], 'symbol')
model.save(path='dump.tmp')

print(model.dummy_cols)

# for symbol in ['ADA-BTC', 'ADA-USDT', 'BCHABC-KRW',
#        'BCHABC-USD.20190809', 'BCHABC-USD.20190816',
#        'BCHABC-USD.20190823', 'BCHABC-USD.20190927',
#        'BCHABC-USD.PERPETUAL', 'BCHABC-USDT',
#        'BTC-JPY.PERPETUAL', 'BTC-KRW', 'BTC-USD.20190809',
#        'BTC-USD.20190816', 'BTC-USD.20190823',
#        'BTC-USD.20190927', 'BTC-USD.PERPETUAL',
#        'BTC-USDT', 'EOS-BTC', 'EOS-KRW',
#        'EOS-USD.20190809', 'EOS-USD.20190816',
#        'EOS-USD.20190823', 'EOS-USD.20190927',
#        'EOS-USD.PERPETUAL', 'EOS-USDT', 'ETC-BTC',
#        'ETC-USD.20190809', 'ETC-USD.20190816', 'ETC-USDT',
#        'ETH-BTC', 'ETH-KRW', 'ETH-USD.20190809',
#        'ETH-USD.20190816', 'ETH-USD.20190823',
#        'ETH-USD.20190927', 'ETH-USD.PERPETUAL',
#        'ETH-USDT', 'LTC-BTC', 'LTC-KRW',
#        'LTC-USD.20190809', 'LTC-USD.20190816',
#        'LTC-USD.20190823', 'LTC-USD.20190927',
#        'LTC-USD.PERPETUAL', 'LTC-USDT', 'XRP-BTC',
#        'XRP-KRW', 'XRP-USD.20190809', 'XRP-USD.20190816',
#        'XRP-USD.20190927', 'XRP-USDT']:
for symbol in [
    'ADA-BTC',
    'ADA-USDT',
    'BCHABC-KRW',
    'BCHABC-USD.PERPETUAL',
    'BCHABC-USDT',
    'BTC-JPY.PERPETUAL',
    'BTC-KRW',
    'BTC-USD.PERPETUAL',
    'BTC-USDT',
    'EOS-BTC',
    'EOS-KRW',
    'EOS-USD.PERPETUAL',
    'EOS-USDT',
    'ETC-BTC',
    'ETC-USDT',
    'ETH-BTC',
    'ETH-KRW',
    'ETH-USD.PERPETUAL',
    'ETH-USDT',
    'LTC-BTC',
    'LTC-KRW',
    'LTC-USD.PERPETUAL',
    'LTC-USDT',
    'XRP-BTC',
    'XRP-KRW',
    'XRP-USDT'
]:
  print(f"{symbol:<8}: {model.predict({'symbol': symbol})/1e6:.2f} ms")
